#pragma once
#include "PropertiesWnd.h"
#include "MeasureStation.h"


// CCameraWnd

class CCameraWnd : public CDockablePane
{
	DECLARE_DYNAMIC(CCameraWnd)

public:
	CCameraWnd();
	virtual ~CCameraWnd();

  void AdjustLayout(void);
  void EnableAll(BOOL bEnable);

public:
  void SetVSDotNetLook(BOOL bSet)
  {
    m_wndPropList.SetVSDotNetLook(bSet);
    m_wndPropList.SetGroupNameFullWidth(bSet);
  }

public:
  void StationSwitch_slot(CMeasureStation* station);

protected:
	DECLARE_MESSAGE_MAP()

protected:
  void InitPropList();
  void SetPropListFont();

protected:
  afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  afx_msg void OnSize(UINT nType, int cx, int cy);
  afx_msg void OnExpandAllProperties();
  afx_msg void OnUpdateExpandAllProperties(CCmdUI* pCmdUI);
  afx_msg void OnSortProperties();
  afx_msg void OnUpdateSortProperties(CCmdUI* pCmdUI);
  afx_msg void OnSetFocus(CWnd* pOldWnd);
  afx_msg void OnSettingChange(UINT uFlags, LPCTSTR lpszSection);
  afx_msg LRESULT OnPropertyChanged(WPARAM wParam, LPARAM lParam);

protected:
  CFont m_fntPropList;
  CPropertiesToolBar m_wndToolBar;
  CMFCPropertyGridCtrl m_wndPropList;

private:
  CCamera* camera_;
  CMeasureStation* station_;

private:
  CMFCPropertyGridProperty* misc_;
  CMFCPropertyGridProperty* name_;

  CMFCPropertyGridProperty* gain_group_;
  CMFCPropertyGridProperty* gain_min_;
  CMFCPropertyGridProperty* gain_max_;
  CMFCPropertyGridProperty* gain_;

  CMFCPropertyGridProperty* shutter_group_;
  CMFCPropertyGridProperty* shutter_min_;
  CMFCPropertyGridProperty* shutter_max_;
  CMFCPropertyGridProperty* shutter_;
};


